1. Technical Field
The present disclosure generally relates to information handling systems (IHS) and in particular to input/output virtualization adapters within information handling systems.
2. Description of the Related Art
As the value and use of information continue to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system (IHS) generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes, thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
IHSes typically include I/O adapters. These I/O adapters also include single root input/output virtualization (SR-IOV) capable adapters. Single-Root Input/Output Virtualization (SR-IOV) is a standard that enables PCIe devices to be shared in order to satisfy virtualization needs. SR-IOV provides a mechanism by which a single root function (e.g., a single Ethernet port) can appear to be multiple separate physical devices. As a result, a PCIe device port can be shared between multiple virtual machines. Consequently, the PCIe devices are shared between the virtual machines without any of the virtual machines having to be aware of the operation of other virtual machines.
A compute node can have one or more hypervisors which host respective VMs. Each hypervisor can be configured to be Single Root Virtualization (SR-IOV) aware and can utilize a SR-IOV-aware endpoint to allocate corresponding virtual adapters/functions (VFs) effectively within the VMs. As a result, an administrator can configure the chassis PCIe slot assignment to use specific SR-IOV aware endpoints as dedicated/non-shared (NS)/single rooted (SR) to one compute node and make use of the above mentioned hypervisor feature to allocate the endpoint virtual adapters/functions within the VMs running on that node for efficient VM access and throughput.
IHSes include a category of systems called converged shared infrastructure systems. A converged infrastructure operates by grouping multiple information technology (IT) components such as other IHSes into a single computing package. Components of a converged infrastructure may include servers, which can include host compute nodes, data storage devices, networking equipment and software for IT infrastructure management. Converged infrastructure provides centralized management of IT resources, system consolidation, increased resource-utilization rates, and lower operational costs.
In systems where a converged infrastructure (e.g., the PowerEdge VRTX) is utilized, a SR-IOV-aware PCIe endpoint utilizing the chassis integrated Multi Root Aware (MRA) switch and associated management solution can perform as shared/multi-rooted (MR) endpoint device. The MRA switch along with management solution exposes the SR-IOV endpoint virtual adapters/functions within the switch bridges to be exposed as multi rooted. As a result, an administrator can configure the chassis PCIe slot assignment to use a specific SR-IOV endpoint as an MR endpoint (enabling more than one chassis compute node to have access to endpoint through it virtual adapters/functions) facilitating VMs hosted across the compute nodes to have access to a common shared Input-Output (IO) medium like shared storage.
Device endpoints are statically enabled to either perform as shared or dedicated among root compute nodes. The underlying ability for a user to make a dynamic and flexible slot device configuration does not exist, and the end user does not have the means to choose whether an endpoint device operates as a MR/shared endpoint or as a non-MR/unshared endpoint. The static nature of the configurability also impedes or prevents manufacturing from leveraging a device agnostic approach for configuration operations when providing firmware updates at a factory. Factory infrastructure have had to implement specific processing logic with the introduction of shared-only devices adding further complexity within factory debug and implementation instructions.
As a result of these static configurations, both the first approach, in which SR-IOV aware endpoints are utilized as dedicated/non-shared (NS)/single rooted (SR) for one compute node, and the second approach involving the converged shared infrastructure and management solutions have a number of limitations with respect to flexibility in realizing multiple different types of requests including requests to use SR-IOV-aware adapters/endpoints as dedicated/non-shared (NS)/single rooted (SR) and as a shared or multi-rooted (MR) endpoint device.